Qu'est-ce que powershell passthru ?

PowerShell PassThru est une technique utilisée dans PowerShell pour renvoyer des valeurs à partir d'une fonction ou d'une commande. Cela permet de renvoyer des résultats spécifiques pour une utilisation ultérieure sans interrompre le flux de traitement.

Lorsque vous exécutez une commande ou une fonction dans PowerShell, il renvoie généralement uniquement les résultats à la console, sans possibilité de les utiliser dans un autre contexte ou script. Cependant, avec l'utilisation de la commande "PassThru", vous pouvez récupérer spécifiquement les valeurs que vous souhaitez utiliser ultérieurement.

Pour utiliser PowerShell PassThru, il suffit d'ajouter la commande "-PassThru" à la fin d'une instruction ou d'une fonction. Par exemple, si vous utilisez la commande "Get-Process" pour récupérer une liste de processus en cours d'exécution, vous pouvez ajouter "-PassThru" pour renvoyer les résultats à une variable :

$processes = Get-Process -PassThru

Maintenant, la variable "$processes" contiendra les résultats de la commande "Get-Process" et vous pourrez les utiliser pour effectuer d'autres opérations dans votre script.

PowerShell PassThru est particulièrement utile lors de la création de fonctions personnalisées, où vous pouvez spécifier les résultats à renvoyer à l'aide de cette technique. Par exemple, si vous avez une fonction qui effectue des calculs mathématiques complexes et que vous souhaitez renvoyer uniquement la somme de ces calculs, vous pouvez utiliser PassThru pour renvoyer uniquement cette valeur spécifique :

function Calculate-Sum { param( [int]$a, [int]$b )

$sum = $a + $b
return $sum -PassThru

}

Maintenant, lorsque vous appelez la fonction "Calculate-Sum", elle renverra uniquement la somme des deux nombres spécifiés plutôt que d'afficher les autres résultats à la console.

En utilisant PowerShell PassThru, vous pouvez donc contrôler précisément les valeurs que vous souhaitez renvoyer à partir de commandes ou de fonctions PowerShell, offrant ainsi une flexibilité accrue dans la gestion des résultats de vos scripts.